event->dnd.send_event = FALSE;
event->dnd.context = g_object_ref (_gdk_quartz_drag_source_context);
- screen = gdk_window_get_screen (event.dnd.window);
+ screen = gdk_window_get_screen (event->dnd.window);
if (screen)
{
GList* windows, *list;
gint gx, gy;
- event.dnd.context->dest_window = NULL;
+ event->dnd.context->dest_window = NULL;
windows = gdk_screen_get_toplevel_windows (screen);
_gdk_quartz_window_nspoint_to_gdk_xy (aPoint, &gx, &gy);
wh = gdk_window_get_height (win);
if (gx > wx && gy > wy && gx <= wx + ww && gy <= wy + wh)
- event.dnd.context->dest_window = win;
+ event->dnd.context->dest_window = win;
}
}
static GtkDragSourceInfo *gtk_drag_get_source_info (GdkDragContext *context,
gboolean create);
-static void gtk_drag_drop_finished (GtkDragSourceInfo *info);
+static void gtk_drag_drop_finished (GtkDragSourceInfo *info,
+ GtkDragResult result);
extern GdkDragContext *gdk_quartz_drag_source_context (); /* gdk/quartz/gdkdnd-quartz.c */
info = gtk_drag_get_source_info (context, FALSE);
if (info != NULL)
- gtk_drag_drop_finished (info);
+ gtk_drag_drop_finished (info, GTK_DRAG_RESULT_ERROR);
}
static gboolean
if (!success)
g_signal_emit_by_name (info->source_widget, "drag-failed",
- info->context, GTK_DRAG_RESULT_NO_TARGET, &success);
+ info->context, result, &success);
if (success && info->delete)
g_signal_emit_by_name (info->source_widget, "drag-data-delete",